package cn.unknowpupil.init.service.system;

import cn.unknowpupil.init.domain.system.SysDictType;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * Created at 2020-10-30 by  w10g <br>
 * Initialize SysDictType  ... <br>
 *  字典类型表 核心业务处理接口
 *
 * @author unknowpupil
 * @since 0.0.1
 */
public interface ISysDictTypeService extends IService<SysDictType> {
        /**
         *  新增
         * @param sysDictType {@link SysDictType}  字典类型表
         * @return {@link SysDictType}
         */
        boolean create(SysDictType sysDictType);

        /**
         *  详情
         * @param id {@code Long}   SysDictType ID
         * @return {@link SysDictType}
         */
        SysDictType info(Long id);

        /**
         *  删除
         * @param id {@code Long}   SysDictType ID
         * @return {@link SysDictType}
         */
        boolean delete(Long[] id);


        /**
         *  修改
         * @param sysDictType {@link SysDictType}  字典类型表
         * @return {@link SysDictType}
         */
        boolean update(SysDictType sysDictType);


        /**
         * 分页
         * @param current {@code int} 页码
         * @param size {@code int} 笔数
         * @param sysDictType {@link SysDictType}
         * @return {@code IPage<SysDictType>}
         */
        IPage<SysDictType> page(int current, int size, SysDictType sysDictType);

        /**
         * 情况字典缓存
         */
        void clearCache();

        /**
         * 到处数据
         * @param dictType
         * @return
         */
        List<SysDictType> selectDictTypeList(SysDictType dictType);
}
